package com.sprouting.personal.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sprouting.personal.model.entity.Website;
import com.sprouting.personal.model.vo.WebsiteVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 网址
 *
 * @author ：LX（长沙麓谷）
 * @date 创建时间： 2022/9/10 8:10
 */
public interface WebsiteDao extends BaseMapper<Website> {

    /**
     * 通过网站名称找到网站
     * @param id 网址ID，传了该ID，则会忽略查询该数据
     * @param userId 用户ID
     * @param url 网址地址
     * @return
     */
    Website getWebsiteByUrl(@Param("id") String id, @Param("userId") String userId, @Param("url") String url);

    /**
     * 查询全部的网址
     * @param website 查询参数
     * @param sort 排序字段
     * @return
     */
    List<WebsiteVo> getWebList(@Param("website") Website website, @Param("sort") String sort);

    /**
     * 根据网址Id查询
     * @param id 网址ID
     * @return
     */
    Website getWebsiteById(String id);

    /**
     * 获取当前用户下的网址总数
     * @param userId 用户ID
     * @return
     */
    Long getWebSiteTotal(String userId);
}
